/**
 * [26] 删除有序数组中的重复项
 *
 * @format
 * @lc app=leetcode.cn id=26 lang=javascript
 */

// @lc code=start
/**
 * @param {number[]} nums
 * @return {number}
 */
// 双指针，覆盖重复值，最后将剩余元素出栈
var removeDuplicates = function (nums) {
    if (nums.length < 2) return nums.length
    let [current, next] = [0, 1]
    while(current<nums.length-1)
    return nums.length
}

// 单指针+立即删除数组元素 splice 十分耗时
// var removeDuplicates = function (nums) {
//     if (nums.length < 2) return nums.length
//     let i = 0
//     while (i < nums.length - 1) nums[i] == nums[i + 1] ? nums.splice(i, 1) : i++
//     return nums.length
// }

// var removeDuplicates = function (nums) {
//     // nums = Array(...new Set(nums))
//     const dict = {}
//     let i = 0
//     while (i < nums.length) {
//         if (dict[nums[i]]) {
//             nums.splice(i, 1)
//         } else {
//             dict[nums[i]] = true
//         }
//     }
//     return nums.length
// }

debugger
let nums = [1, 1, 2, 0, 2, 3]
console.log(removeDuplicates(nums), nums)
// @lc code=end
